Cloud providers
Prepare credentials
Apple
For apple you want to go to this page and after following the guide, you will have Apple ID and app-specific password.
Google
For google you want to go to Google Cloud Platform/Credentials page, then create a credential that suite your use case. You want clientId
,client secret
and after this. Also you need to enable Google CALDAV/CARDDAV for your project.
Also you need to setup oauth screen, add needed oauth2 scopes, use proper oauth2 grant flow and you might need to get your application verified by google in order to be able to use CALDAV/CARDDAV api. Refer to this page for more details.
After the oauth2 offline grant you should be able to obtain oauth2 refresh token.
Fastmail
Generate an app specific password just like apple, follow this guide for more information.
Other cloud providers not listed are not currently tested, in theory any cloud with basic auth and oauth2 should work, stay tuned for updates.
Caveats
Google caldav and carddav api are not very standard, it includes several quirks:
- Caldav will always use UID inside
ics
file as filename, for example if you created a new event with name1.ics
but haveabc
as its UID inside, you can only access it usingabc.ics
. - Carddav will always generate a new UID for your
.vcf
files. For example a file created with name1.vcf
with UIDabc
, it will have a UID like1bcde2e
inside the actual created data. - Google api will add custom data entries inside your
ics
andvcf
files like newPRODID
, newTIMETAMP
and some customX-
fields. - For carddav, you cannot create a
vcf
file with the same name again even if it's already deleted.